
        <html>
			<head>
			     <title>中国菜刀仿冒官网三百万箱子爆菊记 - 健宇</title>
				 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
			</head>
			<body>
				<h1>原文地址:<a href="http://drops.wooyun.org/news/13471">http://drops.wooyun.org/news/13471</a></h1>
				
      <p>
        <h1>0x00 前言</h1>

<hr />

<p>常言道，出来混总是要还的，看了乌云知识库的<a href="http://drops.wooyun.org/papers/13128">《网络小黑揭秘系列之黑产江湖黑吃黑 ——中国菜刀的隐形把手》</a>一文，表示很震惊，网络竟然是如此的不安全，无聊之下花了一周时间来调查360所说的“从公开的whois信息显示，<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="638bccc686fcfc86f3ee85d0cb86e5ef8ae1cd84cdd287dbd9110c0c175a5310060023040e020a0f4d000c0e">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>，同时，该邮箱同时还有注册“maicaidao.me”这个域名。安全圈的朋友们一看这个邮箱，应该并不陌生，没错这个邮箱的主人正是某sec组织的成员之一，接下来的我们就不多说了，有兴趣的可以自己去挖挖。”</p>

<p>估计很多朋友都很好奇是怎么拿下来的，这里大概介绍一下吧，希望能促进中国网络安全的发展，为行业贡献自己的一份力量。</p>

<!--more-->

<h1>0x01 信息收集</h1>

<hr />

<p>首先抓包，为了避免程序会有各种检测，流量镜像到了wireshark，写了个过滤只看HTTP协议，找到了收信的IP地址和域名，然后使用自写的互联网信息收集脚本，针对目标域名的IP整个C段，所有与收信涉及的域名都扫了子域名、端口和应用分布情况，邮箱等，并根据收集到的现有信息生成了一个字典规则等待后续针对性的爆破，恩，暂时只能这样了，毕竟目标并不是大型企业，360天眼他们安全团队也搞过应该知道该目标的难度，从整个数据流量中能够留给我们的线索很少。</p>

<h1>0x02 综合检测过程</h1>

<hr />

<p>A、收集完信息分析发现，9128.cc和maicaidao.co域名指向的都是一个地址。</p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702421739332110.png" alt="" /></p>

<p>（历史所有的9128.cc域名修改解析记录）</p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702421934717210.png" alt="" /></p>

<p>（历史所有的maicaidao.co域名修改解析记录）</p>

<p>这下就基本上可以确定这个是个真实IP地址了，绑定HOST测试成功，直接绕过了cloudflare的云防护，这里又通过朋友打听了解到23开头的网段都是美国那边的高防段，一般都是国内代理在淘宝等地销售。</p>

<p>然后分析另外的一个域名的一些信息，又有一些新的发现，<code>http://www.threatexpert.com/report.aspx?md5=4b4a956b9c7dc734f339fa05e4c2a990</code></p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702422037184310.png" alt="" /></p>

<p>(maicaidao.me相关的解析记录)</p>

<p><img src="http://static.wooyun.org//drops/20160307/201603070242225876441.png" alt="" /></p>

<p>(maicaidao.me相关的木马报告)</p>

<p>看这个报告，原来老外拿这个中国菜刀木马去分析了啊，可见其影响力！</p>

<p>B、在掌握了这些情况后花了2天时间对相关的IP所有C段的地址系统漏洞、WEB漏洞、包括自动化组合大小写并且智能转换成数字的弱口令都扫描了一遍，2天下来依然没什么进展，应该很多朋友都去花了大量时间做过同样的事情了，应该都是无功而返，看来只能社工了。。。</p>

<p>C、思考了好几天，没有太多头绪了，抱着试试看的心态，用之前采集到的email结合自动生成的密码库去爆破ssl的imap，利用90sec的邮件用户名，收集到的其他信息做好字典！！！！睡了一觉回到公司奇迹出现了！！！ 爆破谷歌ssl imap 993，自动组合到了密码“<code>root90secfuckyou</code>”爆破成功了！！</p>

<p>成功进入目标邮箱。</p>

<p><img src="http://static.wooyun.org//drops/20160307/201603070242254231761.png" alt="" /></p>

<p>（目标gmail）</p>

<p>进去以后就看到了很多的godaddy邮件，这下不用说了，直接去重置。</p>

<p><img src="http://static.wooyun.org//drops/20160307/201603070242269205171.png" alt="" /></p>

<p>（成功重置密码进入域名管理界面）</p>

<p><img src="http://static.wooyun.org//drops/20160307/201603070242276104381.png" alt="" /></p>

<p>（maicaidao.co域名指向了cloudflare）</p>

<p>进了这里以后还是不能够确定最终的结果，分析该菜刀才是我们此次的目的，就必须要确认收信，想了一下最安全的是做反向代理来抓包，因为cloudflare做了cdn默认会隐藏源地址，管理员一时半会无法发现，就直接用gmail去找回，结果还真成功了，哈哈，运气还是有点好。</p>

<p><img src="http://static.wooyun.org//drops/20160307/201603070242296470591.png" alt="" /></p>

<p>（一款商业反向代理来可视化配置中间人攻击源站）</p>

<p>为了调查这个箱子还广大网友一个绿色安全的互联网环境，花了点钱买了一款商业的反向代理来做此次抓包分析，替换返回包插入指定JavaSscript，这下每个请求该站点的人都会纳入到我们的流量统计系统，以及cookies跟踪系统来了。</p>

<p>苦苦等待了几天一直没有发现有任何管理员的痕迹，解析记录什么的也是很久没有变化了，倒是有很多post提交shell的数据包都提交到我服务器来了，每天保守估计得有几千shell啊！</p>

<p>实在是无奈了，不过能够看到很多白帽子的数据，只能感叹这些人和我一样无聊，害我每天要筛选有没有管理员的足迹。</p>

<p>到这里又卡住了，思考了一下现在已经拿到的权限，进入脑洞模式，每天下班回家必须在公交车上坐两个小时，一直发呆坐到家已是晚上八点了，匆匆吃完饭，买了一个短信网关的API接口，写了个程序请求流量统计页面自动过滤关键词短信提醒，待我睡醒已是午夜2点，夜深人静的时候思路总是格外的清晰，失望的看了一眼放在一旁的手机没有一条短信过来，差不多已经放弃了这个思路了，清醒后的脑袋突然想到只急着登录进入邮箱就找回密码了，有这么多邮件，为什么我不去看看呢？</p>

<p>想到此刻，又登录到这个邮箱，这个被360安全团队戏称“公开whois信息中域名注册邮箱为<code><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="06746969723f3675636546616b676f6a2865696b">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script></code>主人就是某sec组织的成员之一”的这个邮箱，我尝试了很多次组合这个都一直没有登录到90sec，不知道为什么他们要这么说，挺无奈的，没爆破出来也许是我的字典不够强吧，那么好吧，我让朋友帮忙到某系统里面查了一下登录某sec网站的登录数据包，然而并没有找到相关注册记录，就因为这误导我走了一天的弯路。在这个邮箱中，仔细的看了每一封邮件，不放过任何一个线索，天下武功唯快不破确实是真理，这几天几乎都没有好好睡上一觉了，这个时候一封某IDC很久以前的一封邮件吸引我点开了它，但是现在不能确认目标的服务器就在这个IDC买的，用这个邮箱组织语言发了一封邮件给IDC的客服，等待回复，哈哈，经过确认这个服务器确实是在此IDC商购买的，那么又多了一条线索，顺着这条线索摩擦摩擦。</p>

<p>在邮箱翻到的常用用户名，又做了一次成功的密码重置！登录的IDC管理页面，用开通的密码去登录无果，直接提交工单给IDC，要求IDC修改密码，30分钟可爱的IDC管理员就告诉我已经处理好了，真的是太happy了，当时真有一种跳起来的冲动，留下几张最终结果图。</p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702423042493101.png" alt="" /></p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702423381285111.png" alt="" /></p>

<p>（事实证明前期的信息收集踩点是多么的重要啊）</p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702423432221121.png" alt="" /></p>

<p>（留个纪念吧，也花了将近十天的时间不容易啊，今晚可以好好休息了）</p>

<p><img src="http://static.wooyun.org//drops/20160307/2016030702423541654131.png" alt="" /></p>

<p>（友情提醒一下大家不要再用网络上的东西了，后门太多，这只是冰山一角） 为了互联网的安全，为了各位的劳动成果不被别人所剥夺，长沙雨人网安团队代表大家为民除害覆盖式的删除了170MB的文本文件，目测三百万条shell，应该算国内最大的了吧。</p>

<h1>0x03 结语</h1>

<hr />

<p>本文写到此主要是为了和大家一起分享一下一些经验和渗透过程中的一些思路，主要是为了抛砖引玉，民间高手太多，此文发完继续低调的打我的酱油，为理想梦想努力奋斗，希望有一些思路能够为大家的工作提供帮助，也提醒大家尽量不要用别人的工具，在这个网络中，看不见的硝烟战斗每天都在持续，你看不见并不代表没有发生，文中所说是互联网真实的冰山一角黑幕之一，各位朋友各自保重。</p>      </p>
    
			</body>
		</html>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          